﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.Serialization;
using Web.Framework.Svc;

namespace PlanProd.Contracts
{
    [Serializable]
    [DataContract]
    public class PlanProduccionDetalleProd : IAuditable, ILogicalRemoved
    {
        public PlanProduccionDetalleProd()
        {
            CantidadesPorSemana = new List<PlanProduccionDetalleProdSemanal>();
        }

        [DataMember]
        public int Id { get; set; }

        [DataMember]
        public int PlanProduccionId { get; set; }

        [DataMember]
        public int ProductoId { get; set; }

        [DataMember]
        public string ProductoIdExterno { get; set; }

        [DataMember]
        public string ProductoNombre { get; set; }

        [DataMember]
        public string ColorIdExterno { get; set; }

        [DataMember]
        public string ColorNombreExterno { get; set; }

        [DataMember]
        public int CalidadId { get; set; }

        [DataMember]
        public string Calidad { get; set; }

        [DataMember]
        public bool DesvioPendienteDeAprobacion { get; set; }

        [DataMember]
        public int? ProductoSegundaId { get; set; }

        ///// <summary>
        ///// Indica el id del detalle de segunda calidad
        ///// </summary>
        //[DataMember]
        //public int? DetallePlanProdDeSegundaId { get; set; }

        [DataMember]
        public List<PlanProduccionDetalleProdSemanal> CantidadesPorSemana { get; set; }

        [DataMember]
        public DateTime AuditFechaCreacion { get; set; }

        [DataMember]
        public string AuditUserNameCreacion { get; set; }

        [DataMember]
        public DateTime? AuditFechaModificacion { get; set; }

        [DataMember]
        public string AuditUserNameModificacion { get; set; }

        [DataMember]
        public bool Removed { get; set; }
    }
}
